package com.starlight.flower_server.domain.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.starlight.flower_server.controller.exception.NotFoundException;
import com.starlight.flower_server.domain.TotalData;
import com.starlight.flower_server.domain.comment.cqrs.CommentPageQuery;
import com.starlight.flower_server.domain.comment.data.CommentData;
import com.starlight.flower_server.infrastructure.entity.Comment;

import java.util.List;

/**
 * @Author yfy2001
 * @date 2023/4/6 8:49
 */
public interface CommentService {
    Comment queryCommentDetailById(Long id) throws NotFoundException;

    Integer logicDeleteCommentById(Long id);

    Integer insertComment(Comment comment);

    Integer modifyComment(Comment comment);

    IPage<CommentData> queryCommentDataList(CommentPageQuery query);

    List<CommentData> queryCommentDataListByArticleId(Long articleId);

    TotalData<CommentData> queryAllCommentData();

    TotalData<CommentData> queryCommentTotalCount();
}
